/**
 * @ClassName: Demo06
 * @Description: TODO 递归练习
 * @Author: MaykkStar@163.com
 */
public class Demo06 {
    public static void main(String[] args) {
        int mySum = mySum(100);
        System.out.println("res = " + mySum);
    }

    /**
     * 求 n 的累加和
     * 规律：
     * 100 的累加和 = 100 + 99的累加和
     * 99 的累加和 = 99 + 98的累加和
     * 98 的累加和 = 98 + 97的累加和
     * ...
     * 1 的累加和就等于 1 自己本身
     * 总结得到一个表达式，除了 1 以外，n 的 累加和 等于 n + (n - 1) 的累加和
     *
     * @param n 要求的是几的累加和
     * @return 结果
     */

    private static int mySum(int n) {
        if (n == 1) return 1;
        return n + mySum(n - 1);
    }
    // 从前往后是递，从后往前是归
    // 总结起来就是自己调用自己
}
